29.0
Projects & Applications
Utilities
A few
applications that I wrote and may be useful to others.
Coding
related
These
programs are specifically related to programming, or to PureBasic itself.
Experimental
or discontinued
Stuff
I fooled around with, or plan to return to some day...
29.101
Wakiewakie
What
it is
A WOL
tool aimed at HTPC owners, or users of other client / server setups that
require a server to wake up.
Primary
difference between Wakiewakie and other WOL tools is ease of configuration,
detection of assigned IP addresses, and a (self adjusting) progress indicator.
What
it does
-
Makes
sure the local (client) machine has a valid address
-
Ping some
always on device (typically a router)
-
Send a
WOL to a certain mac address (typically the network card of the machine
to wake up)
-
Ping the
server (to make sure it's awake)
-
Return
control to the user (or a batch file)
-
Create
a desktop shortcut with all options set
Download
Installation
Just
start the executable.When using the 'history' option Wakiewakie will create
one additonal file called wakiewakie.his in the same folder as the executable.
Documentation
There
is a build-in and external (text) help file, and all fields have tool-tips.
Additional
information
29.102
WallX
What
it is
A wallpaper
tool (not a wallpaper manager!) aimed at multi monitor setups and virtual
machines.
WallX
is a small utility I wrote after fooling around with VirtualBox.
Originally it created backgrounds 'on the fly' allowing quick identification
of different VM's, but it changed over time and can now display random
wallpapers on any multi-monitor setup, regardless of resolution or position.Scroll
down to see 'dual monitor auto resizing auto cropping wallpaper' in action...
Update.
WallX is now at version 2.10x, and supports Windows 10. It also received
a bunch of (internal) updates for better handling of multi monitor setups
with (semi) random images, rounded corners (don't we all want them) as
well as shortcuts and drag-and-drop support.
What
it does
-
Pick random
images from a folder with wallpapers and smartly adjust them to your multi
monitor setup
-
Add image
effects on the fly
-
Auto crop
/ stretch loaded wallpapers to match any combination of monitors, up to
ten (!)
-
Create
background images for better identification of multiple machines, for example
VM's
-
Detects
IP and screen changes when in resident mode
-
Runs on
Windows98, XP 32, Vista 64, Windows 7, 8, 10
-
Support
for custom presets and preference lists
Download
Installation
Unpack
and copy the file wallx.exe to a comfy place. Starting the program without
any command line options will bring up a little help screen.
Documentation
There
is a build-in and external (text) help file, and all fields have tool-tips.
Start the program without any command line options, or use the option 'help'
and you will get a little help screen.
Remember
to add 'start' if you want to run resident.
Additional
information
v1.91 on Windows 10:
v1.70 on Windows XP:
Here
are some example images created with WallX:
wallx.exe
blue mark "MEDIASERVER" resident
wallx.exe
base dots text "BASE IMAGE | WIN 98 SE UK | NOT FOR REGULAR USE | ~host~
~ip~"
wallx.exe
red big 1
wallx.exe
traffic fade big 2 dots text "MAIL SERVER | ~host~ - ~ip~"
And
two examples of multi monitor wallpapers with transparent text superimposed:
wallx.exe
monitor 0 load c:\software\wallpaper\an_evangelion.jpg monitor 1 load c:\software\wallpaper\an_eureka7_1.jpg
monitor all transparent big ~ip~ text "TEST | ~host~ ~ip~ "
wallx.exe
load c:\software\wallpaper\2h_mountain_lake.jpg dots transparent big ~desktop~
text "MONITOR ~desktop~ | ~timestamp~" fade
Rounded
corners? We got you covered as of v1.92 :-)
29.103
SQB
What
it is
A .M3U
playlist manager / tool which can also can export folders and playlists
as .mp3 collections (using Sox).
With
this you can manage your playlists, and export and convert (all songs on)
a playlist to easily copy them to, for example, a portable MP3 player,
a phone, or a memory stick or card to use in your car. Especially useful
for those who sometimes rename their music files, or have a device that
doesn't play .mp3 songs. If you have a car or music player that doesn't
handle playlists or .flac files, then this is for you!
What
it does
-
Check
and modify (SqueezeBox) .M3U playlists
-
Help detecting
missing files
-
Simplify
exporting and converting all songs in a playlist to a specific folder
Download
Installation
-
Unpack
and copy the SQB folder anywhere you like.
-
Run SQB.exe.
-
Make sure
to set all proper paths on the preferences tab.
Documentation
-
More information
can be found in the embedded and enclosed help file
-
Note that
SQB uses Sox for FLAC to MP3 conversion, see the Sox folder for more details
on Sox
-
Most MP3
patents have expired by now, except for the US, where the final patent
will expire December 2017
-
Sox requires
some additional DLL's to handle MP3's, they are included
-
You're
not allowed to use these DLL's in the US, but you could rebuild the DLL's
or Sox itself using the source which is freely available on the Internet
-
Do you
know about EncSpot?
Other
information
29.104
WaitWindow
What
it is
A simple
command for batch files to test for open / closed windows.
What
it does
-
Commandline
tool to wait for (the existence of) a window
-
Use 'waitwindow
help' for all commandline options
Download
Installation
Copy
somewhere into your path
Documentation
-
Use 'waitwindow
help' for all commandline options
-
Syntax:
waitwindow <windowname> [<timeout>] [<action>] [<commandline>]
-
Timeout:
-
0 - no
timeout (wait forever)
-
n - wait
n seconda
-
Action:
open | wait | waitforopen - default, wait until the specified window is
open
-
close
| waitforclose - wait until the specified window is closed
-
openclose
| waitforopenandclose - wait until the specified window is open, then closed
again
-
ifnot
| runifnotopen - execute commandline if the window isn't open, wait until
done
-
start
| startifnotopen - execute commandline if the window isn't open, do not
wait until done
-
Example:
-
waitwindow
purebasic* - wait until a window 'purebasic...' is open
-
waitwindow
balabolk* 10 open - wait until balabolk... is open, or 10 seconds have
passed
-
waitwindow
squeeze* 1 ifnot squeezeplay.bat - start squeezeplay if window isn't open
-
waitwindow
obs* 1 start "C:\Program Files\obs-studio\bin\64bit\obs64.exe" - avoid
multiple instances of obs
29.201
CodeCaddy
What
it is
Who's
your daddy? CodeCaddy! An add-on for the Purebasic IDE, that even The Hoff
would use!
-
In silly
words: CodeCaddy is an instant context related reference search tool, backup
assistent, multiline construction enhancement and code synchronizer / reformatter.
Pfff.
-
In real
language: a smart search that looks in your current code as well as all
other files, and shows the results in a seperate window. Plus, it brings
a couple of tools along.
I'm not
sure if CodeCaddy did inspire the Purebasic devs to improve their IDE (but
it's nice to flatter oneself) or if great minds think alike (which in my
case would then also apply to small minds :-)) but most of the features
of CodeCaddy have made it in this or some other form into the IDE. I still
use CodeCaddy for its backup mechanism, look-up feature, and 'unused' code
stripper.
What
it does
-
looks
for any occurancies of specified code or keywords in all sorts of files
-
create
numbered backups (jaPBe style with a little pizzaz) in a dedicated backup
folder using .cdy and .bak files
-
installs
itself in the PureBasic IDE tools menu, but only if you tell it to
-
synchronizes
two folders taking .cdy .pb .bak files in account (good for bringing your
code with you)
-
adds build
date, build number and save number constants on compilation time (like
PureBuild, only better ;-))
-
flatten
multiline sections, ie. lines ending on '_'
-
searches
the web from within the PureBasic IDE
-
removes
unused code before compilation
-
free,
indefinitely
If you
really really really want to compare CodeCaddy with other tools, it's a
little of...
-
PureBuilder
-
CodeArchive
search
-
Constant
explorer
-
Code reformatter
-
Alt+F1
... all
rolled into one. Sort of. In fact, I never felt the need for any of the
above since I wrote CodeCaddy :-)
Download
Installation
Did
I mention there was some documentation inside the download? :-) Anyway,
there are several ways to try CodeCaddy, and eventually install it. Here
are a few options...
The
'lazy' way
CodeCaddy
can install itself if you want, more for the lazy people:
-
download
codecaddy.zip
-
unpack,
copy codecaddy.exe in your PureBasic folder
-
run it
-
use the
menu option Tools / Install in IDE
The
'I wanna' know all' way
-
download
codecaddy.zip
-
unpack,
copy codecaddy.exe in your PureBasic folder
-
run it
-
press
the help button
-
follow
the instructions
The
'I love my DOS box' way
-
download
codecaddy.zip
-
unpack,
copy codecaddy.exe in your PureBasic folder
-
open a
command box / dos box / shell prompt whatever
-
cd to
your purebasic folder
-
execute:
codecaddy find "<pb file name>" "<search phrase>"
The
'I don't trust you with my editor preferences anyway' way.
-
download
codecaddy.zip
-
copy codecaddy.exe
into your pb folder
-
run codecaddy.exe
-
select
the menu Options / Preferences
-
go to
the tab Search
-
select
the top 'asterix' button (the one behind the 'Basic' section)
-
select
your PB folder, or a folder where you save all your PureBasic source files
(anything ending on .pb will do)
-
leave
preferences with Ok
-
hit the
F2 key (search)
-
enter
the first letters of a procedure or variable name that you know of
-
hit Start
in
the resulting window the top half shows all hits, the bottom half shows
the related code
Documentation
-
On-board
documentation
-
Example
usage in flash (can be viewed from within CodeCaddy)...
-
Horrible
download
or youtube video
showing how to use it. (Apologies for the quality, and make sure you buy
the FireFly DVD afterwards!)
Additional
information
The
Hoff
For
more information on The Hoff, go here...
Don't forget to ask :-)
Compatibility
CodeCaddy
has been used extensively in writing CodeCaddy :-) CodeCaddy itself was
originally written in PureBasic 4.4x (but
I've been recompiling it on any version of Purebasic ever since),
and works on:
-
Windows
XP
-
Windows
Vista
-
Windows
7
-
Windows
8
-
PureBasic
3.94
-
PureBasic
4.xx 5.xx (thus far on all versions)
I dropped
Windows 98.
Example
use
-
How did
I name that variable?
-
from inside
the PB IDE, first start CodeCaddy with [Control]+[F1]
-
then hit
[Control]+[F] (tell CodeCaddy to search for a certain term)
-
enter
the search phrase and hit [Enter]
-
CodeCaddy
will list all occurances in your current code, in your includes, and in
any other paths if specified
-
CodeCaddy
will colour code and categorize the results, so you can easily spot procedures,
structures, constants and variables
-
you can
scroll through the results using the up/down key, and the found match will
be shown in it's context
-
I need
to look up an example of a keyword / function...
-
inside
the PB IDE, move the cursor on top of the word you're looking for
-
then hit
[Control]+[F1]
-
and CodeCaddy
will list all matches, and you can easily view details on each of them
-
(and suddenly
it's a good idea to put some remarks in your collection of procedures at
the start of each procedure :-))
-
I need
to look up an example of a keyword / function on the InterNet...
-
inside
the PB IDE, move the cursor on top of the word you're looking for
-
then hit
[Alt]+[F1]
-
and CodeCaddy
will launch your browser and specified searches
-
What was
the value of that constant again?
-
as before,
nothing to stop you from including a file with PB or Windows constants,
or any other text file
-
so start
CodeCaddy, hit the [Control]+[F] and enter that phrase
-
CodeCaddy
splits the search in two stages, it halts between these two stages, waiting
for a keypress to continue
-
you can
specify additional files or paths in CodeCaddy under Options / Preferences
/ Search...
-
... include,
for example, files with PB constants, or a C compiler's .h file, or anything
else in Ascii
-
My code
is all messy! Let's clean it up then!
-
then let's
reformat your code!
-
inside
the PB IDE, hit [Alt]+[R]...
-
... and
all code will be nicely indented
-
Keeping
track of version and build numbers is easy...
-
CodeCaddy
keeps automatically track of each build and version by storing some information
in a .CDY file...
-
... which
is updated on every save and every build
-
use two
special constants to use this information inside your program
-
Maintaining
multiple backups so I won't accidentally overwrite my (older, working)
source code is a chore. No, it's not!
-
CodeCaddy
automatically creates backups of your source file in a dedicated folder
-
and numbers
each backup subsequently, so you can return to an older version of your
source even after multiple edits and runs
-
Can I
bring my sources with me? And stop worrying about overwriting a newer version
with some older code once I start lugging code around?
-
define
two folders in CodeCaddy (Options / Preferences / Other/ CodeSync)
-
hit [F9]
and both will be synchronized
-
CodeCaddy
will ask you for confirmation if it can't figure out what is the latest
version (using not only the timestamp but also information in the associated
.CDY files)
To be
honest, I find it very hard to explain. Just use it and see for yourself,
move the cursor over something you need to know more about, and hit [Control]+[F1]
or [Alt]+[F1]and watch the magic.
Screenshots
CodeCaddy
on Windows XP classic.
Some
fields in the Preferences window.
CodeCaddy
on Windows XP 'themed'.
29.202
REval
What
it is
REval
is a simple Regular Expression tool I often use to validate regular expressions
in my code. As reval is writtin in PureBasic using the same regular expression
engine I know the results in my code will match those in REval.
What
it does
-
Type your
regular expression in the top bar, and type or paste the lines you want
to test in the bottom box.
-
If the
regular expression is a valid one a green square will light up, and if
any of the 'test subjects' qualify they will be hightlighted.
Download
Installation
Just
run it.
Documentation
29.203
TD_lib
What
it is
A collection
of algoritms related to thermo dynamics.
What
it does
Interested
in thermo dynamics? Well, I'm definitely not, but I needed some formulas
for my work. This file contains a number of collected routines, scavenged
from the web, and converted to PureBasic. All credits go to Schlatter /
Baker / Kuemmel / Strijk and many others, listed in the source. Any mistakes
are likely mine.
Criticasters
may notice that my conversion to PureBasic is anything but efficient, I've
just tried to stay as close as possible to the original Fortran code to
simplify debugging using the included examples of Schlatter and Baker.
And as I know close to nothing about Fortran and even less about thermo
dynamics you can see my problem... Use at your own risk.
The
full conversion is not entirely done, I think I've done 70% or so,
which included all the routines I needed. Feel free to work on the remainder
:-)
Download
-
Download
tdlib.zip
- source code with some examples
Additional
information
This
is not a .lib file but a regular PureBasic include file.
29.204
X_lib
What
it is
A collection
of different procedures I use in several projects.
What
it does
Not
much by itself.
Download
I do
not maintain a seperate x_lib archive. If you need the latest version,
please download CodeCaddy and copy the appropriate
folder(s) from the source.
Additional
information.
-
This is
not
a .lib file but a regular PureBasic include file.
-
This code
is not multi-threading safe.
29.301
Runalot
What
it is
Discontinued.
What
it does
Little
tool to open a set of URL's at once. I used this in the past to hunt Ebay
and Marktplaats for bargains, and open a few of my favorite websites as
well.
Download
29.302
Sweetspot
What
it is
Discontinued.
Download
|